The present invention relates to methods, devices, systems and computer program products for optimising the performance of processes or systems.
When optimising the performance of technical systems and processes such as, for example, the combustion of fuel, the production of chemical or biochemical products or the machining of parts, it is often necessary to adjust the control variables and measure the responses of the processes or systems to the adjustments in order to find the best possible response or a region in which all responses are adequate. Usually many conflicting responses must be optimised simultaneously, in the burning of fuel it may be desired to have as complete combustion as possible while at the same time it is necessary to hold the combustion temperature below a certain temperature and also to reduce the emissions of oxides of nitrogen to a low level. In the case of a paper producing machine the desired response may be xe2x80x9cformationxe2x80x9d, i.e. the uniformity of fibres in a sheet of paper while the control variables could be; slice lip position; head box tilt angle; vacuum valve positions; and chemical additive flow. In pulp bleaching the desired response could be chemical cost with targets for brightness, final pH and remaining peroxide while the control variables could be temperature, peroxide levels and alkali flow rate. One way of optimising a process or system is by non-systematic xe2x80x9ctrial and errorxe2x80x9d and another way is by changing one control variable at a time while holding the rest constant. Both of these methods are time-consuming and are ineffective at taking into account dynamic changes in the process or system, for example, changes in the composition of the fuel in a combustion process or system. In 1962 an efficient sequential optimisation method called the basic simplex method was presented by Spendley et al in an article called xe2x80x9cSequential Application of Simplex Designs in Optimisation and Evolutionary Operationxe2x80x9d in Technometrics Vol. 4, No. 4, November 1962, pages 441-461. The basic simplex method is based on an initial set of k+1 trials where k is the number of variables. A k+1 geometric figure in a k-dimensional space is called a simplex and the corners of the simplex are called vertices (see FIG. 1). With two variables (k=2) the initial simplex set consists of three trials (k+1) where each trial forms a vertex of the simplex. This number of trials corresponds to the minimum necessary for defining a direction of improved response and is ail economical and timesaving way to start an optimisation project. After the initial trial set the simplex process is sequential with the rejection of one of the current trials and the addition and evaluation of one new trial at a time. The algorithm that the simplex process follows contains the following steps:
reject the trial with the least favourable response value in the current simplex;
calculate a new set of control variable levels (a xe2x80x9ctrialxe2x80x9d) by reflecting into the control variable space opposite the least favourable result;
replace the rejected trial by the new trial to form a new simplex; and,
then return to the first step.
This algorithm can continue indefinitely or call stop or pause after a certain number of steps or when a target performance has been obtained.
If the calculated reflection in the control variables produces a least favourable result then the simplex will oscillate between this trial and the previous rejected trial, This can be avoided by applying the rule that it is not permitted to return to a trial that has just been rejected. Instead the second least favourable trial is rejected and the next simplex is reflected away from it.
To prevent the simplex becoming stuck around a false favourable response, any trial that has been retained for a specified number of steps is re-evaluated. In order to prevent the simplex violating the effective boundaries of the control variables, a check is made of intended trials before they are implemented and if they would violate the control boundaries a very unfavourable response value is instead applied in order to force the simplex back within the specified boundaries.
The simplex method leads systematically to the optimum levels for the control variables.
The simplex method finds the optimum response with fewer trials than the non-systematic approaches or the method of changing one variable at a time. The simplex method is also easily automated. Further research in the field of optimisation has led to an improved simplex method called the modified simplex method. This is described in an article called xe2x80x9cA simplex method for function minimizationxe2x80x9d in xe2x80x9cComputer Journalxe2x80x9d, Vol. 7, 1965, pages 308-313, by Nelder and Mead.
The modified simplex algorithm is a variable size simplex in which the simplex expands in the direction of more favourable conditions and contracts if a move was taken in the direction of less favourable conditions. The expansion and contraction enable the simplex to accelerate along a successful track of improvement and to home in on the optimum conditions. The modified simplex therefore usually reaches the optimum region more quickly than the basic simplex method and it can pinpoint the optimum levels more closely.
A number of other modifications of the Nelder and Mead method has been presented. Several of those other modified methods are described in an article called xe2x80x9cReflections on the modified simplex IIxe2x80x9d in xe2x80x9cTalantaxe2x80x9d, Vol. 32, No. 8B, pages 723-734, by Betteridge and Wade, and in the textbook xe2x80x9cSequential simplex optimizationxe2x80x9d, CRC Press, 1991, ISBN 0-8493-5894-9, by Walters, Parker, Morgan and Deming. Some examples of those other modified methods are the weighted centroid simplex, the super-modified simplex, the controlled weighted simplex, and the composite modified simplex.
In addition to simplex and modified simplex algorithms there are other optimisation algorithms such as genetic algorithms and simulated annealing algorithms where each iteration can be described as a move from one polyhedron or hyperpolyhedron to another one.
A problem with the modified simplex methods or other polyhedron or hyperpolyhedron based optimisation algorithms is that it can be difficult or even impossible for them to detect when process or system conditions change. This is because as they home in onto the optimum response the simplexes, resp. polyhedrons resp. hyperpolyhedrons contract. This leads to insensitivity, as the step size may be too small to detect any noticeable difference in the performance of the process or system. If the process or system conditions change so that there is a new optimum response, which is not detected by the contracted simplex resp. polyhedron, resp. hyperpolyhedron then the new optimum response will not be found.
The object of the invention is to provide methods, devices, systems and computer program products for overcoming some or all of the above stated problems.
The present invention solves at least some of the above stated problems by means of methods having the features mentioned in the characterising part of claim 1.
The present invention solves at least some of the above stated problems by means of computer program products having the features of claim 7.
The present invention solves at least some of the above stated problems by means of computers having the features of claim 8.
In a method in accordance with a first embodiment of the present invention, a method for optimising a process or system has an optimisation algorithm, which is provided with a method for controlling the minimum size of an optimisation step so that it can react more quickly to changes in the conditions of a process or system.
In a second embodiment of the present invention, a method for optimising a process or system has an optimisation algorithm that is provided with a method for controlling the maximum size of an optimisation step in order to prevent it from oscillating around but never entering the optimum region if the width of the optimum region is much smaller than the step size.
In a further embodiment of the present invention, a method for optimising a process or system has an optimisation algorithm that is provided with a method for controlling both the maximum and minimum sizes of an optimisation step in order to achieve both of the above-mentioned effects.
In a further embodiment of the present invention, the methods for controlling the minimum and/or maximum sizes of an optimisation step can be selectively deactivated in order to allow a user to, for example, reduce the sensitivity of the optimisation algorithm and/or to allow a rapid but coarse initial optimisation of the optimisation algorithm.
The invention will be described more closely in the following by means of non-limiting examples of embodiments and figures which illustrate the inventive concept applied to an optimisation method of the modified simplex type.